package com.terabits.smartriver.mapper;

import com.terabits.smartriver.meta.dto.MongoData;
import com.terabits.smartriver.meta.po.Box;
import com.terabits.smartriver.util.PageData;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

@org.apache.ibatis.annotations.Mapper
public interface DeviceMongoDataMapper extends Mapper<MongoData> {
    /**
     * 插入盒子上报数据
     *
     * @param boxNum
     * @param boxInterface
     * @param data
     * @param closeTime
     * @param breakTime
     * @param createTime
     */
    void addDeviceMongoData(@Param("boxNum") String boxNum, @Param("boxInterface") String boxInterface, @Param("data") Object data, @Param("closeTime") String closeTime, @Param("breakTime") String breakTime, @Param("createTime") String createTime);

//    /**
//     * 获取最新一条数据
//     *
//     * @param boxInterface
//     * @return
//     */
//    MongoData selectDeviceMongoData(@Param("boxInterface") String boxInterface);

    /**
     * 获取最新一条开启数据
     *
     * @param boxNum
     * @param boxInterface
     * @param time
     * @return
     */
    MongoData selectDeviceOnMongoData(@Param("boxNum") String boxNum, @Param("boxInterface") String boxInterface, @Param("time") String time);

    /**
     * 获取最新一条关闭数据
     *
     * @param boxNum
     * @param boxInterface
     * @param time
     * @return
     */
    MongoData selectDeviceOffMongoData(@Param("boxNum") String boxNum, @Param("boxInterface") String boxInterface, @Param("time") String time);

}